#include <asm/system.h>
#include <asm/ptrace.h>
#include <asm/synch_bitops.h>
+#include <xen/evtchn.h>
#include <xen/interface/event_channel.h>
#include <xen/interface/physdev.h>
#include <asm/hypervisor.h>
-#include <xen/evtchn.h>
#include <linux/mc146818rtc.h> /* RTC_IRQ */
/*
/* Upcall to generic IRQ layer. */
#ifdef CONFIG_X86
extern fastcall unsigned int do_IRQ(struct pt_regs *regs);
+void __init xen_init_IRQ(void);
+void __init init_IRQ(void)
+{
+ irq_ctx_init(0);
+ xen_init_IRQ();
+}
#if defined (__i386__)
static inline void exit_idle(void) {}
#define IRQ_REG orig_eax
}
}
-void __init init_IRQ(void)
+void __init xen_init_IRQ(void)
{
int i;
int cpu;
- irq_ctx_init(0);
-
spin_lock_init(&irq_mapping_update_lock);
init_evtchn_cpu_bindings();